package com.bw.controller;

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.bw.bean.DataBean;
import com.bw.service.DataBeanService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

/**
 * @author admin
 * @date 2025年09月25日 14:55
 */
@RestController
public class DataBeanController {
    @Autowired
    private DataBeanService dataBeanService;

    @RequestMapping("/s1")
    public JSONObject select1(){
        JSONObject result = new JSONObject();
        result.put("status", 0); // 状态码，0表示成功
        result.put("msg", "");   // 消息内容，成功时为空

        // 创建数据对象
        JSONObject data = new JSONObject();
        result.put("data", data);

        // 创建列定义数组和数据行数组
        JSONArray columns = new JSONArray();
        JSONArray rows = new JSONArray();
        data.put("columns", columns);
        data.put("rows", rows);

        // 定义表格列信息

        JSONObject col2 = new JSONObject();
        col2.put("id", "name");         // 字段名
        col2.put("name", "名称");   // 显示中文名
        columns.add(col2);

        JSONObject col3 = new JSONObject();
        col3.put("id", "cta");         // 字段名
        col3.put("name", "播放次数");   // 显示中文名
        columns.add(col3);

        JSONObject col4 = new JSONObject();
        col4.put("id", "ctb");         // 字段名
        col4.put("name", "播放时长");   // 显示中文名
        columns.add(col4);

        JSONObject col5 = new JSONObject();
        col5.put("id", "ctc");         // 字段名
        col5.put("name", "观看人数");   // 显示中文名
        columns.add(col5);

        JSONObject col6 = new JSONObject();
        col6.put("id", "ctd");         // 字段名
        col6.put("name", "人均观看时长");   // 显示中文名
        columns.add(col6);

        // 从服务层获取数据并填充到行中
        List<DataBean> beans = dataBeanService.select1();
        for (DataBean bean : beans) {
            JSONObject row = new JSONObject();


            row.put("name", bean.getName());      // 名称
            row.put("cta", bean.getCta());        // 播放次数
            row.put("ctb", bean.getCtb());       // 播放时长
            row.put("ctc", bean.getCtc());       // 观看人数
            row.put("ctd", bean.getCtd());    // 人均观看时长

            rows.add(row);
        }
        return result;
    }
    @RequestMapping("/s2")
    public JSONObject select2(){
        JSONObject result = new JSONObject();

        result.put("status",0);
        result.put("msg","");

        JSONArray data = new JSONArray();
        result.put("data",data);

        List<DataBean> beans = dataBeanService.select2();
        for (DataBean bean : beans) {
            JSONObject row = new JSONObject();
            row.put("name",bean.getName());
            row.put("value",bean.getCtb());
            data.add(row);
        }
        return result ;
    }
    @RequestMapping("/s3")
    public JSONObject select3(){
        JSONObject result = new JSONObject();
        result.put("status", 0); // 状态码，0表示成功
        result.put("msg", "");   // 消息内容，成功时为空

        // 创建数据对象
        JSONObject data = new JSONObject();
        result.put("data", data);

        JSONArray mapData = new JSONArray();
        data.put("mapData",mapData);
        data.put("valueName","订单总额");


        List<DataBean> beans = dataBeanService.select3();
        for (DataBean bean : beans) {
            JSONObject row = new JSONObject();
            row.put("name",bean.getName());
            row.put("value",bean.getCta());

            mapData.add(row);
        }
        return result ;
    }

    @RequestMapping("/s4")
    public JSONObject select4(){
        JSONObject result = new JSONObject();

        result.put("status",0);
        result.put("msg","");

        List<DataBean> beans = dataBeanService.select4();
        for (DataBean bean : beans) {
            result.put("data",bean.getCta());
        }
        return result ;
    }



}
